082e57baf6c61c36dc22d7c174400df782c22fff,core/kernel/source/jetbrains/mps/watching/ModelChangesWatcher.java,BulkFileCahngesListener,after,#List#,99

Before Change


      for (final VFileEvent event : events) {
        String path = event.getPath();
        File file = new File(path);
        FileUtil.processFilesRecursively(file, new Processor<File>() {
          public boolean process(File file) {
            String filePath = file.getAbsolutePath();
            if (MPSFileTypesManager.instance().isModelFile(filePath)) {
              ModelFileProcessor.getInstance().process(new VFileEventDecorator(event, filePath), reloadSession);
            } else if (MPSFileTypesManager.instance().isModuleFile(filePath)) {
              ModuleFileProcessor.getInstance().process(new VFileEventDecorator(event, filePath), reloadSession);
            }
            return true;
          }
        });
        if (MPSFileTypesManager.instance().isModelFile(path)) {
          ModelFileProcessor.getInstance().process(event, reloadSession);
        } else if (MPSFileTypesManager.instance().isModuleFile(path)) {

After Change


        String path = event.getPath();
        File file = new File(path);
        if (file.isDirectory() && file.exists()) {
          FileUtil.processFilesRecursively(file, new Processor<File>() {
            public boolean process(File file) {
              String filePath = file.getAbsolutePath();
              if (MPSFileTypesManager.instance().isModelFile(filePath)) {
                ModelFileProcessor.getInstance().process(new VFileEventDecorator(event, filePath), reloadSession);
              } else if (MPSFileTypesManager.instance().isModuleFile(filePath)) {
                ModuleFileProcessor.getInstance().process(new VFileEventDecorator(event, filePath), reloadSession);
              }
              return true;
            }
          });
        }
        if (MPSFileTypesManager.instance().isModelFile(path)) {
          ModelFileProcessor.getInstance().process(event, reloadSession);